home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / src / Tools / linuxdoc-sgml-1.1 / sgmls-1.1 / sgmldecl.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-05-03  |  1.8 KB  |  85 lines

  1. /* sgmldecl.h: SGML declaration parsing. */
  2.  
  3. #define QATTCNT 0 
  4. #define QATTSPLEN 1 
  5. #define QBSEQLEN 2 
  6. #define QDTAGLEN 3 
  7. #define QDTEMPLEN 4 
  8. #define QENTLVL 5 
  9. #define QGRPCNT 6 
  10. #define QGRPGTCNT 7 
  11. #define QGRPLVL 8 
  12. #define QLITLEN 9 
  13. #define QNAMELEN 10
  14. #define QNORMSEP 11
  15. #define QPILEN 12
  16. #define QTAGLEN 13
  17. #define QTAGLVL 14
  18.  
  19. #define NQUANTITY (QTAGLVL+1)
  20.  
  21. #define TOTALCAP 0 
  22. #define ENTCAP 1 
  23. #define ENTCHCAP 2 
  24. #define ELEMCAP 3 
  25. #define GRPCAP 4 
  26. #define EXGRPCAP 5 
  27. #define EXNMCAP 6 
  28. #define ATTCAP 7 
  29. #define ATTCHCAP 8 
  30. #define AVGRPCAP 9 
  31. #define NOTCAP 10
  32. #define NOTCHCAP 11
  33. #define IDCAP 12
  34. #define IDREFCAP 13
  35. #define MAPCAP 14
  36. #define LKSETCAP 15
  37. #define LKNMCAP 16
  38.  
  39. extern char *captab[];
  40.  
  41. struct sgmldecl {
  42.      long capacity[NCAPACITY];
  43.      long subdoc;
  44.      UNCH formal;
  45.      UNCH omittag;
  46.      UNCH shorttag;
  47.      UNCH shortref;
  48.      UNCH namecase[2];        /* case translation of general/entity names */
  49.      int quantity[NQUANTITY];
  50. };
  51.  
  52. extern struct sgmldecl sd;
  53.  
  54. #define OMITTAG (sd.omittag)
  55. #define SUBDOC (sd.subdoc)
  56. #define SHORTTAG (sd.shorttag)
  57. #define FORMAL (sd.formal)
  58.  
  59. #define ATTCNT (sd.quantity[QATTCNT])
  60. #define ATTSPLEN (sd.quantity[QATTSPLEN])
  61. #define BSEQLEN (sd.quantity[QBSEQLEN])
  62. #define ENTLVL (sd.quantity[QENTLVL])
  63. #define GRPGTCNT (sd.quantity[QGRPGTCNT])
  64. #define GRPCNT (sd.quantity[QGRPCNT])
  65. #define GRPLVL (sd.quantity[QGRPLVL])
  66. #define LITLEN (sd.quantity[QLITLEN])
  67. #define NAMELEN (sd.quantity[QNAMELEN])
  68. #define NORMSEP (sd.quantity[QNORMSEP])
  69. #define PILEN (sd.quantity[QPILEN])
  70. #define TAGLEN (sd.quantity[QTAGLEN])
  71. #define TAGLVL (sd.quantity[QTAGLVL])
  72.  
  73. #define NAMECASE (sd.namecase[0])
  74. #define ENTCASE (sd.namecase[1])
  75.  
  76. #define YES 1
  77. #define NO 0
  78.  
  79. #define UNUSED -1
  80. #define UNKNOWN -2
  81. #define UNDESC -3
  82. #define UNKNOWN_SET -4
  83.  
  84. extern int asciicharset[];
  85.